function [ all, c, ax, vx  ] = PMVDR_presne(xxx)

[samples,sr] = wavread(xxx);

win = 400; 
hopfactor = 0.4;
p = 60;


samples = filter([1 -0.97], 1, samples);

hop = win*hopfactor;
Z = buffer(samples,win,win-hop);
Q = size(Z,2);
hamming_okno = hamming(win);
oknovane_ramce_all = [];
for q = 1:Q
    wind = Z(:,q);
    oknovane_ramce = hamming_okno.*wind;
    oknovane_ramce_all = [oknovane_ramce_all oknovane_ramce];
    X = oknovane_ramce_all;
end


%X_fft=(abs(real(fft(X,800)))).^2;
X_fft=(real(fft(X,800)));

XX = audspec(X_fft, sr, 120, 'bark', 0, sr/2, 1, 1);
 
       
Sa_all = [];
Sp_all = [];
Sb_all = [];

for i = 1:Q,
    ramec_MVDR = XX(:,i);
    [Sa,Sb,Sp] = pmvdr_MVDR_presne(ramec_MVDR,p);
    Sa_all = [Sa_all Sa];
Sp_all = [Sp_all Sp];
Sb_all = [Sb_all Sb];    
end

%Sb_all=real(fft(Sb_all,400));
y = log((Sb_all));

c = real(ifft(y,400));
%c = (rdct(y));

nbands = size(c,1);

c(14:nbands, :) = [];
for i = 1 : 13
           c(i, : ) = c(i, : ) - mean(c(i, : ));
end

c=c';

nf=size(c,1);
nc=13;

  vf=(4:-1:-4)/60;
  af=(1:-1:-1)/2;
  ww=ones(5,1);
  cx=[c(ww,:); c; c(nf*ww,:)];
  vx=reshape(filter(vf,1,cx(:)),nf+10,nc);
  vx(1:8,:)=[];
  ax=reshape(filter(af,1,vx(:)),nf+2,nc);
  ax(1:2,:)=[];
  vx([1 nf+2],:)=[];  
  all=[c vx ax];
  
  c=c';             %zakladne
  ax=ax';           %akceleracne
  vx=vx';           %diferencne
  all=all';         %vsetky 39
  
   subplot(411)
   
 c_idct       = idct(c, 24);

 str_hod = mean(c_idct(:));
 smer_odch  = std(c_idct(:));

 far_skala_1 = 35 - str_hod;
 far_skala_2 = 10 / smer_odch;

 image(far_skala_2 * c_idct + far_skala_1);
 axis xy
 
 subplot(412)
 
 imagesc(c);
 axis xy
 
 


end

